草庐IT

Javascript for ... in 循环与 Object.prototype 和 Array.prototype 属性

全部标签

javascript - 前后交替执行javascsript for循环

更新如下我正在尝试做的是以block为单位遍历数组,从一个block到另一个block交替迭代的方向。使困惑?我也是。例如,如果我想遍历一个包含25个元素的数组,但我想按以下顺序进行:0、1、2、3、4、9、8、7、6、5、10,11,12,13,14,19,18,17,16,15,20,21,22,23,24,最有效的方法是什么?我正在寻找可扩展的东西,因为我现在使用的数组实际上是225个元素,我想以15个元素block的形式遍历它,但这在某些时候可能会改变。到目前为止,我发现唯一可行的方法是将迭代顺序硬连接到第二个数组,然后以正常方式迭代它以获取原始数组的索引。但这很糟糕。任何帮助

javascript - 如何将 JavaScript 对象从 PascalCase 属性克隆到驼峰命名法属性(在 JavaScript 中)?

当我序列化一个ASP.NETMVC表单时,我得到这个:{DestinationId:"e96dd00a-b042-41f7-bd59-f369904737b6",...}但我想要这样,以便它与JS编码约定一致:{destinationId:"e96dd00a-b042-41f7-bd59-f369904737b6",...}我如何获取对象并将每个属性的第一个字符小写? 最佳答案 简单的方法是对你的对象进行迭代:varnewObj={};for(varpino){newObj[p.substring(0,1).toLowerCase(

Javascript 替换子/循环问题

我有一个非常奇怪的问题,我有一个forloop,它应该将所有具有“原始”类的div替换为具有"new"类的文本输入。当我运行循环时,它只会用输入替换所有其他div,但是如果我运行循环只是替换div的类而不是将标签更改为输入,它会执行每个div,而且不仅如此做每一个。这是我的循环代码,以及实时版本的链接:liveversionherefunctiondivChange(){vardivs=document.getElementsByTagName("div");for(vari=0;i 最佳答案 因为当div元素之一从DOM中删除时d

javascript - jQuery 中附加 [object%20Object] 的 JSON 请求

我正在尝试使用getJSON方法获取我用jQuery编写的自定义JSON提要。由于未知原因,URL似乎从末尾删除了cache_gen.php?location=PL4并替换为[object%20Object],导致发生404错误。这是我正在使用的jQuery:varfetchData=function(){if(Modernizr.localstorage){varapi_location="http://weatherapp.dev/cache_gen.php";varuser_location="PL4";vardate=newDate();console.log(api_loca

javascript - jQuery 选择器 : all but n first in a row

所以我有一个这样的sibling列表;(注意b不是a的child,它们是所有sibling。缩进是为了强调。)在jQuery中,我需要选择每个b,放弃连续的前n个元素。没有特定类型/类的元素会打破连胜,也没有任何可靠数量的b在连胜中,或非b元素之间。如果我使用选择器添加一个类selected,并且假设n=2,那么我的DOM将如下所示;换句话说,选择除b之外的所有b元素以外的所有n元素,或开头。我试过:nth-child(n+3),但这似乎只是考虑了所有b,尽管a会破坏它们。我也试过摆弄.nextUntil()和.filter(),但必须有比我更好的人才能破解这个问题。想法?

javascript - 用js设置div的数据属性

我有一堆div.textBox,我想对其应用数据属性。这是我想要结束的:我试过了:document.getElementByClassName('text').dataset.stellar.ratio="2";但它不工作......帮助! 最佳答案 作为documentedThegetElementsByClassNamemethodofDocumentinterfacereturnsanarray-likeobjectofallchildelementswhichhaveallofthegivenclassname(s).更准确

javascript - 以编程方式测试特定的 css 属性兼容性(调整文本区域的大小支持)

我正在跨浏览器网站上实现一个可调整大小的文本区域。现在在FF/Chrome/Safari中,以下内容:textarea{resize:both;}像魅力一样工作。一点点嗅探让我来到这里:http://www.w3schools.com/cssref/css3_pr_resize.asp我在哪里得知Opera和IE不支持这个属性。没什么大不了的,下面的javascript可以负责检测,其中包含对resizable()的jqueryUI调用以实现功能:if((navigator.userAgent.indexOf('Trident')!=-1)||(navigator.userAgent.

javascript - 如何在不使用循环的情况下在 javascript 选取框内查找选定元素?

我正在编写自己的拖放文件管理器。这包括一个javascript选取框,当它处于事件状态时会计算相交的元素(文件)并通过向它们添加类来选择它们。我目前在mousemove处理程序期间执行检查,遍历元素坐标数组并确定哪些元素与拖放选择框相交。函数目前看起来像这样:selectItems:function(voidindex){varself=this;varcoords=self.cache.selectioncoords;for(vari=0,len=self.cache.items.length;iitemcoords.x&&coords.topleft.yitemcoords.y){

Javascript - 错误对象的名称和消息属性在哪里?

试图理解为什么JavascriptError对象的两个跨浏览器属性,即“name”和“message”,不能使用“for...in”方法找到//errorcode...}catch(err){//inFFthislists3propertiesforfileName,lineNumberandcolumnNumber...//butNOTnameormessage!for(varpropertyNameinerr){$('#diags').append('errproperty:'+propertyName+',value:'+err[propertyName]+'');}//this

javascript - EmberJS 类型错误 : Object #<Object> has no method 'reject'

我已经用ember设置了这个应用程序,但我收到了这条奇怪的消息:类型错误:对象#没有方法“拒绝”这是我的EmberJS应用配置:App=Ember.Application.create();App.Store=DS.Store.extend({revision:12,adapter:DS.RESTAdapter.extend({url:'http://localhost:8080',namespace:'6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b'})});App.Router.map(functio